package com.ly.emp.bean.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * 工分登记VO
 *
 * @author fzf
 * @since 2023-02-06
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
@Schema(description = "工分登记")
public class TeamRationRegVO {

    @Schema(description = "工分登记详情")
    List<TeamRationRegDetailVO> teamRationRegDetailVOs;
    @Schema(description = "主键")
    private String id;
    @Schema(description = "录入模式")
    private String addMode;
    @Schema(description = "周期编码")
    private String periodCode;
    @Schema(description = "周期名称")
    private String periodName;
    @Schema(description = "项目ID")
    private String rationId;
    @Schema(description = "项目编码")
    private String rationCode;
    @Schema(description = "项目名称")
    private String rationName;
    @Schema(description = "开始日期")
    private Date beginDate;
    @Schema(description = "结束日期")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date endDate;
    @Schema(description = "项目类型")
    private String rationType;
    @Schema(description = "项目内容")
    private String rationContent;
    @Schema(description = "标准分值")
    private BigDecimal stdscore;
    @Schema(description = "积分计算单位")
    private String unit;
    @Schema(description = "描述")
    private String descr;
    @Schema(description = "工号")
    private String psnNum;
    @Schema(description = "姓名")
    private String psnName;
    @Schema(description = "组织编码")
    private String orgCode;
    @Schema(description = "组织名称")
    private String orgName;
    @Schema(description = "状态")
    private String status;
    @Schema(description = "分摊类型[暂时]")
    private String dispatchtype;
    @Schema(description = "排序")
    private BigDecimal displayOrder;
    @Schema(description = "考核单位")
    private String suitUnit;
    @Schema(description = "归属部门标识")
    private String sysDeptId;
    @Schema(description = "归属单位标识")
    private String sysCompanyId;
    @Schema(description = "工作质量积分标准")
    private String qstandard;
    @Schema(description = "积分分类(20  数量积分 10  质量积分 30  数量+质量积分)")
    private String rationForm;
    @Schema(description = "功能模型")
    private String functionModel;
    @Schema(description = "数据入口 self：self个人录入自己，self：leader 负责人录入，self null 班组长录入")
    private String self;
    @Schema(description = "统计类型")
    private String statisticType;
    @Schema(description = "积分标准类")
    private String categoryCode;
    @Schema(description = "积分标准类")
    private String categoryName;
    @Schema(description = "系数1")
    private String quotiety1CodeFrm;
    @Schema(description = "系数1value")
    private BigDecimal quotiety1Frm;
    @Schema(description = "系数2")
    private String quotiety2CodeFrm;
    @Schema(description = "系数2value")
    private BigDecimal quotiety2Frm;
    @Schema(description = "系数3")
    private String quotiety3CodeFrm;
    @Schema(description = "系数3value")
    private BigDecimal quotiety3Frm;
    @Schema(description = "系数4")
    private String quotiety4CodeFrm;
    @Schema(description = "系数4value")
    private BigDecimal quotiety4Frm;
    @Schema(description = "系数5")
    private String quotiety5CodeFrm;
    @Schema(description = "系数5value")
    private BigDecimal quotiety5Frm;
    @Schema(description = "系数6")
    private String quotiety6CodeFrm;
    @Schema(description = "系数6value")
    private BigDecimal quotiety6Frm;
    @Schema(description = "工作工序")
    private String workingProcedure;
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Schema(description = "标准作业时间")
    private BigDecimal standardoPerationTime;
    @Schema(description = "标准作业人数")
    private BigDecimal standardoPerationNum;
    @Schema(description = "连续工作折算系数")
    private BigDecimal conversionCoefficient;
    @Schema(description = "连续工作折算台数")
    private BigDecimal conversionUnits;
    @Schema(description = "工作说明")
    private String workExplReg;
    @Schema(description = "工作地点")
    private String workplace;
    @Schema(description = "工作地点编码")
    private String workplaceCode;
    @Schema(description = "工作地系数")
    private String workplaceQuotiety;
    @Schema(description = "实际作业人数")
    private BigDecimal operationNum;
    @Schema(description = "附件名称")
    private String fileName;
    @Schema(description = "附件类型")
    private String fileType;
    @Schema(description = "附件ID")
    private String fileCode;
    @Schema(description = "附件地址")
    private String fileUrl;
    @Schema(description = "附件地址")
    private String filePath;
    @Schema(description = "审核日期")
    private Date auditDate;
    @Schema(description = "完成日期")
    private Date closeDate;
    @Schema(description = "数据源")
    private String dataSource;
    @Schema(description = "录入人员编码-内部使用")
    private String sysUpdatorId;
    @Schema(description = "录入人员")
    private String sysUpdatorName;
}